package com.dms.modules.product.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableField;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 商品评论VO
 */
@Data
@ApiModel(value = "商品评论VO", description = "商品评论视图对象")
public class CommentVO {
    
    @ApiModelProperty("评论ID")
    private Long id;
    
    @ApiModelProperty("商品ID")
    private Long productId;
    
    @ApiModelProperty("订单ID")
    private Long orderId;
    
    @ApiModelProperty("商品名称")
    private String productName;
    
    @ApiModelProperty("用户ID")
    private Long userId;
    
    @ApiModelProperty("用户昵称")
    private String nickname;
    
    @ApiModelProperty("用户头像")
    private String avatar;
    
    @ApiModelProperty("评分")
    private Integer rating;
    
    @ApiModelProperty("评论内容")
    private String content;
    
    @ApiModelProperty("评论图片")
    @TableField(typeHandler = com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler.class)
    private List<String> images;
    
    @ApiModelProperty("商家回复")
    private String reply;
    
    @ApiModelProperty("回复时间")
    private LocalDateTime replyTime;
    
    @ApiModelProperty("点赞数")
    private Integer likeCount;
    
    @ApiModelProperty("是否已点赞")
    private Boolean isLiked;
    
    @ApiModelProperty("是否已评价")
    private Boolean hasReviewed;
    
    @ApiModelProperty("是否匿名")
    private Boolean isAnonymous;
    
    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;
} 